#include<stdio.h>
#include<time.h>
#define N 100
long long h[N+1];
void fill(){
    int i;
    for(i=1;i<=N;i++)
        h[i]=1LL*i*i*i*i*i;
}
int inc(const void*a,const void*b){
      long long dif= *(long long*)(a)-*(long long*)(b);
      if(dif>0)return 1;
      if(dif<0)return -1;
      return 0;
}
int main(){
    long long start=clock();
    fill();
    int a,b,c,d,e,f;
    for(a=1;a<=N;a++)
    for(b=1;b<=a;b++)
    for(c=1;c<=b;c++)
    for(d=1;d<=c;d++)
    for(e=1;e<=d;e++){
      long long key=h[a]+h[b]+h[c]+h[d]+h[e];
      long long *pos=bsearch(&key,
                             h+a+1,
                             N-a,
                             sizeof(h[0]),
                             inc);
      if(pos!=NULL)
         printf("%d %d %d %d %d %d\n",e,d,c,b,a,pos-h);
    }
    long long end=clock();
    printf("It elapsed %.3f seconds.\n",(end-start)/1000.0);
    return 0;
}
